// 全局配置
const config = {
  // 动态获取API基础URL，适应不同的访问环境
  get apiBaseUrl() {
    const host = window.location.hostname;
    const port = window.location.port;
    // 本地开发环境(3000) 或者直接访问8080时，使用本地后端
    if ((host === 'localhost' || host === '127.0.0.1') && (port === '3000' || port === '8080')) {
      return 'http://localhost:8080';
    }
    // 其他情况(生产环境)，返回空路径，让 Axios 使用相对 URL，由 Nginx /api 路由反代至后端
    return '';
  },
  
  // 资源基础URL与API基础URL保持一致
  get resourceBaseUrl() {
    return this.apiBaseUrl;
  },
  
  // 获取完整资源URL
  getFullResourceUrl(path) {
    if (!path) return '';
    if (path.startsWith('http')) return path;
    
    // 检查path是否已经包含了/users/avatars，防止添加多余的/uploads
    if (path.startsWith('/users/avatars/')) {
      return `${this.resourceBaseUrl}${path}`;
    }
    
    return path.startsWith('/') ? `${this.resourceBaseUrl}${path}` : `${this.resourceBaseUrl}/${path}`;
  },
  
  // 获取完整API URL
  getFullApiUrl(path) {
    if (!path) return '';
    if (path.startsWith('http')) return path;
    return path.startsWith('/') ? `${this.apiBaseUrl}${path}` : `${this.apiBaseUrl}/${path}`;
  }
};

export default config; 